// CodeGear C++Builder
// Copyright (c) 1995, 2015 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'ffmpeg_types.pas' rev: 30.00 (Windows)

#ifndef Ffmpeg_typesHPP
#define Ffmpeg_typesHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>

//-- user supplied -----------------------------------------------------------

namespace Ffmpeg_types
{
//-- forward type declarations -----------------------------------------------
struct _iobuf;
//-- type declarations -------------------------------------------------------
typedef System::WordBool Bool;

typedef float Float;

typedef System::PDouble *ppDouble;

typedef NativeUInt size_t;

typedef NativeUInt *psize_t;

typedef unsigned ptrdiff_t;

typedef unsigned uint32_t;

typedef unsigned Unsigned;

typedef unsigned unsignedint;

typedef unsigned UINT;

typedef unsigned unsigned_int;

typedef unsigned *punsigned_int;

typedef unsigned unsigned_long;

typedef System::Byte unsignedchar;

typedef System::Byte unsigned_char;

typedef System::PByte punsignedchar;

typedef System::PByte punsigned_char;

typedef int Int;

typedef int *pint;

typedef pint *ppint;

typedef System::Int8 int8_t;

typedef System::Int8 *pint8_t;

typedef System::Byte uint8_t;

typedef System::PByte puint8_t;

typedef System::PByte *ppuint8_t;

typedef ppuint8_t PPByte;

typedef short int16_t;

typedef short *pint16_t;

typedef System::Word uint16_t;

typedef System::Word *puint16_t;

typedef int int32_t;

typedef int *pint32_t;

typedef pint32_t *ppint32_t;

typedef __int64 int64_t;

typedef __int64 *pint64_t;

typedef unsigned __int64 uint64_t;

typedef unsigned __int64 *puint64_t;

typedef System::StaticArray<System::Byte, 1> array_uint8_t;

typedef array_uint8_t *parray_uint8_t;

typedef System::StaticArray<int, 1> array_int;

typedef array_int *parray_int;

typedef System::StaticArray<int, 4> array4_int;

typedef array4_int *parray4_int;

typedef System::StaticArray<System::PByte, 4> array4_puint8_t;

typedef array4_puint8_t *parray4_puint8_t;

typedef System::StaticArray<unsigned, 4> array4_ptrdiff_t;

typedef array4_ptrdiff_t *parray4_ptrdiff_t;

typedef int time_t;

typedef System::StaticArray<char *, 1> AnsiCharArray;

typedef AnsiCharArray *pAnsiCharArray;

struct DECLSPEC_DRECORD _iobuf
{
public:
	char *_ptr;
	int _cnt;
	char *_base;
	int _flag;
	int _file;
	int _charbuf;
	int _bufsiz;
	char *_tmpfname;
};


typedef _iobuf *PFile;

typedef _iobuf TFile;

typedef void * pAVHWAccel;

typedef void * ppAVCodecHWConfigInternal;

//-- var, const, procedure ---------------------------------------------------
static const System::Word max_unsigned = System::Word(0xffff);
}	/* namespace Ffmpeg_types */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FFMPEG_TYPES)
using namespace Ffmpeg_types;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// Ffmpeg_typesHPP
